<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>强制相等运算符(===)</title>
	</head>
	<body>
		<script type="text/javascript">
			var result = null;
			result = new Boolean(null == undefined);
			document.write(result + "</br>");//结果为: true
			//"=="等号符在做判断时做了部分的类型转换
			//注: 尽管null和undefined是不同的,但他们都表示"值的空缺",两者往往可以互换,所以要用严格相等运算符"==="来区分.
			result = new Boolean(null === undefined);
			document.write(result + "</br>");//结果为: false
			//"==="等号符在做判断时不做类型转换
			
			
			/* 相关涉及点： js 的类型转换 */
			/* 当Boolean(),Number(),String(),Object()函数，当不通过new运算符调用这些函数时，他们会作为类型转换函数并按照表3-2的规则做类型转换 */
			result = result + "";//等价于String(result)
			result = +result;//等价于Number(result)
			result = result-0;//等价于Number(result)
			result = !!result;//等价于Boolean(result)
		</script>
	</body>
</html>
